package com.yyy.config;

import com.alibaba.druid.pool.DruidDataSource;
import org.apache.ibatis.datasource.DataSourceFactory;

import javax.sql.DataSource;
import java.util.Properties;

public class MyDruidDataSource implements DataSourceFactory {
    private Properties properties;
    @Override
    public void setProperties(Properties props) {
       //xml文档会将jdbc.properties注入进来
       this.properties=props;
    }

    @Override
    public DataSource getDataSource() {
        //创建druid自己的数据源对象
        //git代码提交测试
        //git代码提交测试第二次
        //git代码提交测试第三次
        DruidDataSource dataSource=new DruidDataSource();


        //向数据源中添加配置信息
        dataSource.setDriverClassName(this.properties.getProperty("jdbc.driverClassName"));//数据库驱动
        dataSource.setUrl(this.properties.getProperty("jdbc.url"));//设置url
        dataSource.setUsername(this.properties.getProperty("jdbc.username"));//设置用户名
        dataSource.setPassword(this.properties.getProperty("jdbc.password"));//设置密码
        dataSource.setInitialSize(Integer.parseInt(this.properties.getProperty("jdbc.initialSize")));//设置初始化连接数
        dataSource.setMaxWait(Integer.parseInt(this.properties.getProperty("jdbc.maxWait")));//设置最大等待连接时间
        dataSource.setMaxActive(Integer.parseInt(this.properties.getProperty("jdbc.maxActive")));//设置最大活动连接数

        return dataSource;
    }
}
